#include <stdio.h>

#if 1
int main(int argc, char const *argv[])
{
   /***a = a + b***/
    int a = 10, b = 8;
    a += b;      
    printf("a=%d\n", a);

    /***a = a - b***/
    a = 10, b = 8;
    a -= b;      
    printf("a=%d\n", a);

    /***a = a * b***/
    a = 10, b = 8;
    a *= b;      
    printf("a=%d\n", a);

    /***a = a / b***/
    a = 10, b = 8;
    a /= b;      
    printf("a=%d\n", a);

    /***a = a % b***/
    a = 10, b = 8;
    a %= b;      
    printf("a=%d\n", a);

    /***a = a & b***/
    a = 10, b = 8;
    a &= b;      
    printf("a=%d\n", a);

    /***a = a | b***/
    a = 10, b = 8;
    a |= b;      
    printf("a=%d\n", a);

    /***a = a ^ b(也可判断两个值是否相等，相等输出 0 )***/
    a = 10, b = 8;
    a ^= b;      
    printf("a=%d\n", a);

    /***a = a << b***/
    a = 10, b = 8;
    a <<= b;      
    printf("a=%d\n", a);


    /***a = a >> b***/
    a = 10, b = 8;
    a >>= b;      
    printf("a=%d\n", a);

    return 0;
}


#else

int main(int argc, char const *argv[])
{/*
//位逻辑取反
    unsigned char x = 0x17;
    unsigned char y = ~x;
    printf("y=%x\n", y);

//位逻辑与
    x = 0126;
    y = 0xac;
    unsigned char z = 0;
    z = x & y;
    printf("z=%x\n", z);

//位逻辑或
    x = 076;
    y = 0x89;
    z = x | y;
    printf("z=%x\n", z);

//位逻辑异或
    x = 75;
    y = 0173;
    z = x ^ y;
    printf("z=%x\n", z);
    printf("z=%o\n", z);

//左移运算符
    x = 0xe4;
    z = x << 3;
    printf("z=%x\n", z);

//右移运算符
    unsigned char x = 0xe4;
    unsigned char y = 0;
    y = x >> 3;
    printf("y=%x\n",y);

    char a,b;
    a = -10;
    b = a >> 3;
    printf("b=%d\n", b);
    printf("b=%x\n", b);
*/

    int a, b, c;
    printf("请输入第1个数>:");
    scanf("%d", &a);
    printf("请输入第2个数>:");
    scanf("%d", &b);
    printf("请输入第3个数>:");
    scanf("%d", &c);
    printf("a=%d b=%d c=%d\n", a, b, c);

    int t = a>b?a:b;
    int max = t>c?t:c;
    printf("max=%d\n", max);

    t = a<b?a:b;
    int min = t<c?t:c;
    printf("min=%d\n", min);

    return 0;
}


#endif
